package com.huffman.smart_picture.domain.enums;

import cn.hutool.core.util.StrUtil;
import lombok.Getter;

/**
 * @author yrforest
 * @version 1.0
 * @description: 空间用户角色枚举
 * @date 2025/6/28 18:28
 */
@Getter
public enum SpaceUserEnum {
    VIEWER(0, "viewer"),
    EDITOR(1, "editor"),
    CREATOR(2, "creator");


    private final Integer value;
    private final String spaceRole;

    SpaceUserEnum(Integer value, String spaceRole) {
        this.value = value;
        this.spaceRole = spaceRole;
    }

    public static SpaceUserEnum getSpaceUserEnum(Integer value) {
        if (value == null) {
            return null;
        }
        for (SpaceUserEnum spaceUserEnum : values()) {
            if (spaceUserEnum.value.equals(value)) {
                return spaceUserEnum;
            }
        }
        return null;
    }

    public static SpaceUserEnum getSpaceUserEnum(String spaceUserRole){
        if (StrUtil.isBlank(spaceUserRole)) {
            return null;
        }

        for (SpaceUserEnum spaceUserEnum : values()) {
            if (spaceUserEnum.spaceRole.equals(spaceUserRole)) {
                return spaceUserEnum;
            }
        }

        return null;
    }
}
